//
//  LssHomeController.swift
//  freeChatting
//
//  Created by mac on 16/4/16.
//  Copyright © 2016年 mac. All rights reserved.
//

import UIKit
private let homeCellId = "homeCellId"
class LssHomeController: LssVisitorViewController {
    var statusesArray:[CZStatus] = [CZStatus]()
    override func viewDidLoad() {
        super.viewDidLoad()
        if !isLogin {
            visitorView?.setOwnData(nil, title: nil)
            return
        }
        loadServerData()
        setUpTableViewInfo()
    }
    //MARK:- 关于tableView的一些信息
    func setUpTableViewInfo(){
        //注册cell
        tableView.registerClass(CZStatusCell.self, forCellReuseIdentifier: homeCellId)
        //设置预估行高
        tableView.estimatedRowHeight = 200
        //自动计算行高
        tableView.rowHeight = UITableViewAutomaticDimension
        //取消分隔符
        tableView.separatorStyle = .None
    }
    
    //MARK:- 实现数据源方法
    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return statusesArray.count
    }
    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier(homeCellId, forIndexPath: indexPath) as! CZStatusCell
        cell.status = statusesArray[indexPath.row]
        return cell
    }
}
extension LssHomeController{
    
    //MARK:- 网络加载数据
    func loadServerData(){
        CZNetworkTools.sharedTools.loadHomeData(LssAppAccountTools.sharedAccountTools.accessToken!) { (response, error) -> () in
            if error != nil{
                print(error)
                return
            }else{
                //判断我们得到的是不是一个数组
                //                print(response)
                guard let Array = response?["statuses"] as? [[String: AnyObject]] else{
                    print("返回的不是一个数组")
                    return
                }
                //定义一个临时数组，用来保存字典转好的模型
                var tempArray:[CZStatus] = [CZStatus]()
                for dict in Array{
                    let model = CZStatus(dict: dict)
                    tempArray.append(model)
                }
                self.statusesArray = tempArray
                self.tableView.reloadData()
            }
        }
    }
    
}
